package com.yex.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.yex.common.utils.DateUtils;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 报单
 *
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2019-01-03 15:02:27
 */
@TableName("tb_investment")
public class InvestmentEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    @TableId
    private Integer id;
    /**
     * 报单名
     */
    private String name;
    /**
     * 收益
     */
    private BigDecimal profit;
    /**
     * 提现
     */
    private BigDecimal profitCash;
    /**
     * 商城积分
     */
    private BigDecimal profitIntegral;
    /**
     * 锁仓etcc
     */
    private BigDecimal profitEtcc;
    /**
     * 锁仓天数
     */
    private Integer profitDay;

    /**
     * 锁仓按0.5%/天释放
     */
    private BigDecimal profitRate;
    /**
     * 赎回 商城积分
     */
    private BigDecimal redeemIntegral;
    /**
     * 赎回 锁仓etcc
     */
    private BigDecimal redeemEtcc;
    /**
     * 锁仓天数
     */
    private Integer redeemDay;
    /**
     * 锁仓按0.5%/天释放
     */
    private BigDecimal redeemRate;
    /**
     * 总动态奖励：变现
     */
    private BigDecimal dynamicCash;
    /**
     * 总动态奖励：转ETCC
     */
    private BigDecimal dynamicEtcc;
    /**
     * 总动态奖励：锁仓天数
     */
    private Integer dynamicDay;
    /**
     * 总动态奖励：锁仓天数按0.5%/天释放
     */
    private BigDecimal dynamicRate;
    /**
     * 状态
     */
    private Integer status;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 投资期限
     */
    private Date startTime;

    private Date endTime;

    private Integer number;

    private BigDecimal amount;

    @TableField(exist = false)
    private String startTimeStr;

    @TableField(exist = false)
    private String endTimeStr;

    /**
     * 设置：
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取：
     */
    public Integer getId() {
        return id;
    }

    /**
     * 设置：报单名
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获取：报单名
     */
    public String getName() {
        return name;
    }

    /**
     * 设置：收益
     */
    public void setProfit(BigDecimal profit) {
        this.profit = profit;
    }

    /**
     * 获取：收益
     */
    public BigDecimal getProfit() {
        return profit;
    }

    /**
     * 设置：状态
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取：状态
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置：创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取：创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置：更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取：更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Integer getNumber() {
        return number;
    }

    public void setNumber(Integer number) {
        this.number = number;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public String getStartTimeStr() {
        return this.startTime == null? startTimeStr : DateUtils.format(this.startTime, DateUtils.DATE_PATTERN);
//		return startTimeStr;
    }

    public void setStartTimeStr(String startTimeStr) {
        this.startTimeStr = startTimeStr;
    }

    public String getEndTimeStr() {
        return this.endTime == null? endTimeStr : DateUtils.format(this.endTime, DateUtils.DATE_PATTERN);
//		return endTimeStr;
    }

    public void setEndTimeStr(String endTimeStr) {
        this.endTimeStr = endTimeStr;
    }

    public BigDecimal getProfitCash() {
        return profitCash;
    }

    public void setProfitCash(BigDecimal profitCash) {
        this.profitCash = profitCash;
    }

    public BigDecimal getProfitIntegral() {
        return profitIntegral;
    }

    public void setProfitIntegral(BigDecimal profitIntegral) {
        this.profitIntegral = profitIntegral;
    }

    public BigDecimal getProfitEtcc() {
        return profitEtcc;
    }

    public void setProfitEtcc(BigDecimal profitEtcc) {
        this.profitEtcc = profitEtcc;
    }

    public BigDecimal getRedeemIntegral() {
        return redeemIntegral;
    }

    public void setRedeemIntegral(BigDecimal redeemIntegral) {
        this.redeemIntegral = redeemIntegral;
    }

    public BigDecimal getRedeemEtcc() {
        return redeemEtcc;
    }

    public void setRedeemEtcc(BigDecimal redeemEtcc) {
        this.redeemEtcc = redeemEtcc;
    }

    public Integer getProfitDay() {
        return profitDay;
    }

    public void setProfitDay(Integer profitDay) {
        this.profitDay = profitDay;
    }

    public BigDecimal getProfitRate() {
        return profitRate;
    }

    public void setProfitRate(BigDecimal profitRate) {
        this.profitRate = profitRate;
    }

    public Integer getRedeemDay() {
        return redeemDay;
    }

    public void setRedeemDay(Integer redeemDay) {
        this.redeemDay = redeemDay;
    }

    public BigDecimal getRedeemRate() {
        return redeemRate;
    }

    public void setRedeemRate(BigDecimal redeemRate) {
        this.redeemRate = redeemRate;
    }

    public BigDecimal getDynamicCash() {
        return dynamicCash;
    }

    public void setDynamicCash(BigDecimal dynamicCash) {
        this.dynamicCash = dynamicCash;
    }

    public BigDecimal getDynamicEtcc() {
        return dynamicEtcc;
    }

    public void setDynamicEtcc(BigDecimal dynamicEtcc) {
        this.dynamicEtcc = dynamicEtcc;
    }

    public Integer getDynamicDay() {
        return dynamicDay;
    }

    public void setDynamicDay(Integer dynamicDay) {
        this.dynamicDay = dynamicDay;
    }

    public BigDecimal getDynamicRate() {
        return dynamicRate;
    }

    public void setDynamicRate(BigDecimal dynamicRate) {
        this.dynamicRate = dynamicRate;
    }
}
